/*
Auteur        :Valentijn Polder
Studentnummer :0782531

$Log: SPI.h,v $
Revision 1.2  2010/05/20 07:35:08  0782531
Commentaar toegevoegd.
IO uitwisselingen toegepast.
Juiste nitialistatie volgorde geimplementeerd

Revision 1.1.1.2  2010/04/26 12:04:58  0793573
Toevoeging eerste versie TWI

Revision 1.1.1.1  2010/04/25 10:53:42  Valentijn
no message


*/

#ifndef __SPI__
#define __SPI__

#define SPEED_ARM 48000000
#define US1_ID 0x00000080
#define SPI_ID 0x00000020
#include <include/AT91SAM7S64.h>


extern unsigned long int p_flag;
extern AT91PS_SPI    p_pSPI;                                                                                                                          //Creeer pointer naar SPI Controller
extern AT91PS_PMC    p_pPMC;                                                                                                                          //Creeer pointer naar Power Management Controller
extern AT91PS_PIO    p_pPIO;                                                                                                                          //Creeer pointer naar Peripheral IO Controller

int SPI_Init(unsigned short int select, unsigned short int polarity, unsigned short int phase, unsigned short int bits, unsigned short int divider);  //Gebruik deze functie om de spi module te initializeren en te initialiseren voor een bepaald ic
void SPI_Write(unsigned short int select, unsigned int data, unsigned long int last);                                                                                         //Schrijf data
int SPI_Read(unsigned short int select);                                                                                                              //Kijk of er data ontvanen is en indien er ontvangen is geef data
void SPI_Stop(void);                                                                                                                                  //Zet module uit

#endif
